"""
练习：有一张图片在服务端，需求通过浏览器
访问这张图片。 在浏览器中访问 127.0.0.1:8000
的时候，展示出这个图片。
编写一个服务端程序完成

响应数据类型:
Content-Type:image/jpeg
"""
from socket import *


# 处理浏览器访问
def handle(conn):
    request = conn.recv(1024)  # 接收请求
    # 组织响应
    with open("dog.jpeg", "rb") as fr:
        data = fr.read()
    response = "HTTP/1.1 200 OK\r\n"
    response += "Content-Type:image/jpeg\r\n"
    response += "\r\n"
    response = response.encode() + data
    conn.send(response)  # 发送响应


def main():
    sock = socket()
    sock.bind(("0.0.0.0", 8000))
    sock.listen(5)
    # 循环接收连接和请求
    while True:
        conn, addr = sock.accept()
        print("Connect from", addr)
        handle(conn)  # 处理请求
        conn.close()

if __name__ == '__main__':
    main()